This archive contains the source for a standalone code resource that conforms to a Window DEFinition (WDEF), as defined by Apple Computer in Inside Macintosh.
It provides a 'windoid' appearance. A windoid is a floating window that appears above document windows in an application and is commonly used for things like tool palettes, information windows, and the like.
The WDEF included in the ResEdit file can be used as-is, but if a zoom box is to be used, you will probably want to change the behavior of what is included (by default, it zooms smaller rather than larger as described in the source code). This WDEF is created for System 6 and later, but it would be easy to modify it for earlier systems if this is important.
I would like to see this WDEF be used as widely as possible, as I have seen many programs recently that use the old-style black and white version. The WDEF should be fairly compatible with the ones included with THINK Pascal and MacApp among others, so it should require a minimum of work to use. Also, I plan to support and upgrade this WDEF as needed, while maintaining its freeware status and including the source code (so it can be modified). I only request any modification of this WDEF be true to its form in terms of graphical design, and that you inform me of any changes (possibly providing source code if you think it might be useful to other Infinity Windoid users).
FEATURES:
• Supports System 7-style coloring of windows.
• In System 7, the tinge color set by the user in the Color control panel is used.
• Close box can be enabled from NewWindow by setting goAwayFlag.
• Zoom box (special case) implemented, utilized by adding zoomDocProc to the proc ID used to create the windoid.
• Title bar can appear along the left of the window if 1 is added to the proc ID (with or without a zoom box).
• For MacApp users, the behavior of the windoid can be switched.
• System 6 coloring scheme is also supported (can be set in Kolor or a similar control panel).
• In System 7, DeviceLoop is used so the windoid will be drawn correctly even when it crosses monitors of differing depths.
• In System 7, indexed color tables are checked to see if there are enough different colors to display the color version (like the system WDEF).
HOW TO CONTACT THE AUTHOR:
To 'register' your copy of this WDEF if you plan to use it and want updates in the future, send me your e-mail address(es). Also, use these addresses to contact me with any problems or suggestions.
Troy Gaul
Infinity Systems
1101 25th Street, #5
Des Moines, IA 50311
MicroFrontier, Inc.
3401 101st Street
Suite E
Des Moines, IA 50322
(515) 270-8109
Internet:
tag002@acad.drake.edu (until May 93)
t-gaul@grayhawk.rent.com
ntwing@aol.com
mfrontier@applelink.apple.com
mfrontier@aol.com
Applelink:
mfrontier
America Online:
ntwing
mfrontier
FAX:
(515) 278-6828
----------------
VERSION HISTORY:
2.2: (Mar 93)
• First publicly distributed version.
• Extensive comments added to facilitate understanding and modification by others.
• Added support for MacApp-style varcodes.
• Bug in way inColor was determined (needed to do a bit-shift before anding with gdFlags) fixed.
• Removed StuffHex of strings used for title bar pattern, now calculates these values.
• Fixed bug in logic of how MixColor was calculating the mixture.
• Support for compilation in THINK C 5.0.
• Added way to build so the window are always hilighted
2.1: (Nov 92)
• Reduced code size by making sure no extra code was being linked by MPW.
• Removed use of Gestalt for code size reasons.
• Ended the use of function pointers since no advantage was being gained by their use.
• Added support for determining if enough different colors were available to do System 7-style color like Apple's does.
2.0: (January 92)
• Rewritten in C.
• Conditional compilation of some features to facilitate a reduced-size version and one that could be distributed.
1.2: (June 91)
• System 6 color support added. This feature was suggested by Richard R. Harms.
• DeviceLoop support added. (Thanks, MacDTS.)
1.1: (May 91)
• Support for System 7-style color titlebars.
1.0: (May 91)
• Original version, written in Pascal and based on original assembly language, black-and-white windoid WDEF used in MicroFrontier products, which was written by Tom Pinkerton.